31 may 2022

Nueva versión del geocodificador de Cartociudad: Nueva tecnología


El servicio de geolocalización de Cartociudad,
servicio REST Geocoder, se ha actualizado tecnológicamente con el fin de ofrecer un mejor servicio al cliente. El servicio de geocodificación o geolocalización, permite localizar una dirección postal junto con su portal o punto kilométrico, un punto de interés, un código postal, una referencia catastral a partir del servicio SOAP de la Dirección General de Catastro, o una entidad de población, proporcionando las coordenadas de los anteriores elementos indicados.

El servicio de geocodificación, comprendido dentro del proyecto de Cartociudad, se caracteriza por ser un referente en el ámbito de direcciones postales de España, procedentes de diferentes organizaciones; como la red viaria de la Información Geográfica de Referencia de Redes de Transporte (IGR-RT) del Sistema Cartográfico Nacional y de datos procedentes de la Dirección General de Catastro, del Eusko-Jaurlaritza-Gobierno Vasco, del Gobierno de Navarra, del Instituto de Estadística y Cartografía de Andalucía (CDAU), de la Comunidad de Madrid, del Gobierno de la Rioja, de la Diputació de Barcelona y del Ayuntamiento de Cáceres.

Así mismo, esas direcciones son completadas con los códigos postales, proporcionados por el Grupo Correos, y con las poblaciones y las unidades administrativas del IGN. El geocodificador de CartoCiudad no solo ofrece direcciones, también proporciona los topónimos del Nomenclátor Geográfico Básico de España, y los puntos de interés de la Base de datos tridimensional multiescala (1:2.000-1:25.000), de Naturaleza, Cultura y Ocio, y del Ministerio para la Transmisión Ecológica y el Reto Demográfico.

Como se ha mencionado, estos datos se publican mediante diferentes servicios web, y entre ellos y el más importante, es el servicio REST Geocoder. Dicho servicio ha sido mejorado y publicado, teniendo actualmente una nueva versión.

Durante este último año se ha estado trabajando en la actualización del servicio que ofrecía Cartociudad, cambiando desde la tecnología empleada hasta la codificación de las funciones. La nueva versión mantiene la interfaz de la API para que no afecte a ningún usuario o aplicación.

Para la creación de esa nueva versión se han realizado una serie de estudios previos: un historial de usuario de las consultas recibidas a través del correo de Cartociudad, cartociudad@mitma.es, y un análisis de la base de datos y de la tecnología empleada.

Con ese historial de usuario de las consultas recibidas se ha conseguido analizar cómo se realizan búsquedas al servicio de geolocalización y también como quieren ver los resultados de dichas búsquedas. De ese modo, se ha ajustado el código al detalle según las necesidades de los usuarios.

Por ejemplo, una de las mejoras que se han obtenido, es que, a partir de ahora, cuando se busque un elemento de una carretera, le saldrá por un lado el portal y por otro lado el punto kilométrico con el término km; así se podrá elegir el elemento deseado.

Al buscar M40 5: salen tanto los portales como los puntos kilométricos de ambos lados de la carretera.

Otro progreso que se tiene es que también salen las extensiones de las direcciones postales, de modo que, en la respuesta del servicio aparece un nuevo parámetro denominando «extensión».
Al buscar Calle Suecia 95, Madrid: salen tanto los portales con extensión como los cercanos sin extensión.

A nivel tecnológico se ha apostado por Elasticsearch, mejorando la estructuración de la información y el rendimiento. Por otro lado, es necesaria la implementación de una nueva herramienta que alimenta al Elasticsearch: Pentaho Data Integration (PDI).

Elasticsearch es un motor de búsqueda basado en Lucene, una API gratuita y de código abierto desarrollada en Java, para crear ese tipo de software. Con esta herramienta se consigue una serie de ventajas, entre las que cabe destacar el autocompletado, la búsqueda de texto completo y la gran velocidad de respuesta.

Por último, la herramienta Pentaho Data Integration (PDI) se usa para ejecutar los procesos de transformación y carga en documentos JSON, que conformarán los índices de Elasticsearch sobre los que se ejecutarán las búsquedas al geocodificador.

Así pues, desde hoy, CartoCiudad cuenta con una nueva versión del geocodificador, siendo sus puntos fuertes la rapidez y eficiencia de respuesta de búsquedas y, al mismo tiempo, la adaptabilidad de las necesidades del usuario.

El servicio se puede encontrar incorporado, como hasta ahora, en el propio visualizador de Cartociudad o en el resto de visualizadores del O.A. Centro Nacional Geográfico (CNIG), tales como IBERPIX o la Fototeca Digital. También se puede acceder directamente al servicio REST desde el portal de Cartociudad.

La nueva versión es totalmente transparente, con la mejora del nuevo parámetro extensión, manteniendo la interfaz de la API.

Publicado por Itziar Doñate Vadillo.

No hay comentarios: